namespace StoryDesigner.Controls
{
// ReSharper disable InconsistentNaming
	public class __temp_HowToGaussBlurAPixel
// ReSharper restore InconsistentNaming
	{
		//first, create a 1D "matrix" of weights that will form a gauss curve, with the peak being in the center.
		//the kernel size is the number of weighting values
		private double[] _kernel = new[]
		{
			0.1,
			0.5,
			0.75,
			1.0,
			0.75,
			0.5,
			0.1
		};

		//then calculate the average of the adjacent pixels according to the weighting
		double calcPixelColor(int x, int y)
		{
			double color = 0; //actual pixel color at x/y
			//					  x - 3    , y * 0.1
			color += pixelColorAt(x + 0 - 3, y)*_kernel[0];
			//					  x - 2    , y * 0.1
			color += pixelColorAt(x + 1 - 3, y) * _kernel[1];
			//					  x - 1    , y * 0.1
			color += pixelColorAt(x + 2 - 3, y) * _kernel[2];
			//					  x		   , y * 0.1
			color += pixelColorAt(x + 3 - 3, y) * _kernel[3];
			//					  x + 1    , y * 0.1
			color += pixelColorAt(x + 4 - 3, y) * _kernel[4];
			//					  x + 2    , y * 0.1
			color += pixelColorAt(x + 5 - 3, y) * _kernel[5];
			//					  x + 3    , y * 0.1
			color += pixelColorAt(x + 6 - 3, y) * _kernel[6];
			color /= _kernel.Length;
			return color;
		}

		double pixelColorAt(int x, int y)
		{
			return 0;
		}

		//then rotate the image by 90 degrees

		//then calculate the averages again

		//then rotate the image back
	}
}